package com.fth.learn.chapter07;

import java.util.Random;
import java.util.Scanner;

/**
 *
 * YiMi
 *
 * @author YiMi
 * @version 1.0
 * @date 2023/7/19 10:13
 */

public class homework02 {

    //    创建一个StringBuffer对象内容为“我就是学习”在其中插入数据使输出结果为“我就是努力学习”。
    public static void question01(){
        StringBuffer str = new StringBuffer("我就是学习");
        str.insert(3,"努力");
        System.out.println(str);
    }



//    创建一个StringBuffer对象内容为“学习使我开心”替换其中的数据使输出结果为“游戏使我快乐”。
    public static void question02(){
        StringBuffer str2 = new StringBuffer("学习使我开心");
        str2.replace(0, 2, "游戏");
        str2.replace(4, 6, "快乐");
        System.out.println(str2);

    }

//    验证一个字符串是否为回文串
    public static void question03(){
//        int a = 1234321;
//        String str3 = String.valueOf(a);
        String str3 = "1111";
        StringBuilder str = new StringBuilder(str3);
        System.out.println(str.reverse().equals(str3) ? "是回文数" : "不是");
        //toString()  为什么要加上才是回文数
//        System.out.println(stringBuilder.reverse().toString().equals(str) ? "是回文数" : "不是回文数");
    }





//    获取随机的字符串，要求如下：
//    定义String getStr(char[] chs)静态方法，方法内要求：获取长度为5的随机字符串，字符串由随机的4个大写英文字母和1个0-9之间（包含0和9）的整数组成
//    定义main方法，方法内完成：
//            1.定义长度为26，元素值为26个大写英文字母的数组chs
//2.传递数组chs调用getStr(char[] chs)方法，获取返回值,并在控制台打印返回值

    public static String getStr(char[] chs){
        Random r = new Random();
        //1个0-9之间（包含0和9）的整数
        String result = r.nextInt(10) + "";
        //随机的4个大写英文字母
        for (int i = 0; i < 4; i++) {
            int index = r.nextInt(chs.length);
            result += chs[index];
        }
        return result;
    }



//
//    创建一个StringBuffer对象然后实现反转输出 例子：123 输出321
    public static void question05(){
        Scanner input=new Scanner(System.in);
        System.out.print("请您输入内容:");
        String contents=input.next();
        StringBuffer str = new StringBuffer(contents);
        str.reverse();
        System.out.println(str);
    }

//    创建一个StringBuffer对象实现和String对象互转
    public static void question06(){
        StringBuffer stringBuffer = new StringBuffer("123456");
        stringBuffer.toString();
        System.out.println(stringBuffer);

        String string = ("789456");
        StringBuffer stringBuffer1 = new StringBuffer(string);
        System.out.println(stringBuffer1);
    }


    public static void main(String[] args) {
//        question01();
//        question02();
//        question03();

//        question05();
//        question06();

        //定义长度为26，元素值为26个大写英文字母的数组chs
        char[] chs = new char[26];
        for (int i = 0; i < chs.length; i++) {
            chs[i] = (char) ('A' + i);
        }
        //传递数组chs调用getStr(char[] chs)方法,
        // 获取返回值,并在控制台打印返回值
        String result = getStr(chs);
        System.out.println(result);


    }
}
